// index.js
var QQMapWX = require('../../utils/qqmap-wx-jssdk.js');
const wxMap = new QQMapWX({ key: 'QT5BZ-RAG64-MZSUT-DBPVO-AYZC6-3JFZB' })
// 获取应用实例
const app = getApp()
Page({
  data: {
    userInfo: {},
    hasUserInfo: false,
    canIUse: wx.canIUse('button.open-type.getUserInfo'),
    canIUseGetUserProfile: true,
    canIUseOpenData: false,
    //canIUseOpenData: wx.canIUse('open-data.type.userAvatarUrl') && wx.canIUse('open-data.type.userNickName'), // 如需尝试获取用户信息可改为false

    kjyq: [{
      id: 1,
      img: "/pages/images/kjyq-img_01.png",
      txt: "粵康码"
    },
    {
      id: 2,
      img: "/pages/images/kjyq-img_02.png",
      txt: "粵核酸"
    },
    {
      id: 3,
      img: "/pages/images/kjyq-img_04.png",
      txt: "疫情区域"
    },
    ],
    //位置信息
    fy_city: {
      location: '',//经纬度
      province: '',//省
      city: '',//市
      district: ''//区
    },
    //天气情况
    fy_TianQi: {
      wendu: '',//温度
      Qing: '正在获取天气信息...'//晴朗
    },


    // 地区疫情数据开始
    city_YQ1: {},

    city_YQ: {
      lastUpdateTime: '',//统计时间

      //国内疫情情况统计
      chinaTotal: {
        confirm: '',//累计确诊数
        dead: '',//累计死亡数
        localConfirm: '',//本土现有确诊
        noInfect: '',//无症状感染者
        nowConfirm: '',//现有确诊
        importedCase: '',//境外输入
        children: [],//省份疫情数据
      },
      chinaAdd: {
        confirm: '',//新增累计确诊
        dead: '',//新增累计死亡数
        localConfirm: '',//新增本土现有确诊
        noInfect: '',//新增无症状感染者
        nowConfirm: '',//新增现有确诊
        importedCase: '',//新增境外输入
      }

    }
    // 地区疫情数据结束

  },
  // 事件处理函数
  bindViewTap () {

  },
  //页面加载时执行
  //.replace('省', '')  //---把省字替换为空
  onLoad () {
    this.reverseGeocoder()

  },
  //页面显示时执行
  onShow () {

  },


  getUserProfile (e) {
    // 推荐使用wx.getUserProfile获取用户信息，开发者每次通过该接口获取用户个人信息均需用户确认，开发者妥善保管用户快速填写的头像昵称，避免重复弹窗
    wx.getUserProfile({
      desc: '展示用户信息', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
      success: (res) => {
        // console.log(res)
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
      }
    })
  },
  getUserInfo (e) {
    // 不推荐使用getUserInfo获取用户信息，预计自2021年4月13日起，getUserInfo将不再弹出弹窗，并直接返回匿名的用户个人信息
    console.log(e)
    this.setData({
      userInfo: e.detail.userInfo,
      hasUserInfo: true
    })
  },

  newgetcity () {
    wx.showModal({
      title: '提示',
      content: "只能定位到市哦",
      success: function (res) {
        if (res.confirm) {
          console.log('用户点击确定')
        }
      }
    })
  },

  // 经纬度逆解析
  reverseGeocoder () {
    let that = this;
    wx.getLocation({
      type: 'gcj02', // 默认为 wgs84 返回 gps 坐标，gcj02 返回可用于 wx.openLocation 的坐标
      success: function (res) {
        // success
        // console.log(res, "经纬度")
        wxMap.reverseGeocoder({
          location: {
            latitude: res.latitude,
            longitude: res.longitude
          },
          success: function (ress) {
            // console.log(ress.result.address_component)
            var _city = ress.result.address_component.city
            that.setData({
              fy_city: {
                province: ress.result.address_component.province,//省
                city: ress.result.address_component.city,//市
                district: ress.result.address_component.district//区
              },
            })

            //调用获取天气信息的方法
            that.getTianQi(_city, that)

            //调用获取当前地区疫情情况信息的方法
            let province_s = ress.result.address_component.province
            let province = province_s.replace('省', '')
            that.getYiQing(province);
          }
        })
      },
      fail: function () {
        // fail
        wx.showModal({
          title: '提示',
          content: "位置信息获取失败，重新获取？",
          success: function (res) {
            if (res.confirm) {
              console.log('用户点击确定')
              that.reverseGeocoder()
            }
          }
        })
      },
      complete: function () {
        // complete
      }
    })
  },

  //获取天气信息
  getTianQi (getcity, that) {
    // console.log(getcity, "移除前")
    let city = getcity.replace("市", "")//从字符串中把“市”字替换成空格
    // console.log(city, "移除后")
    wx.request({
      //https://v0.yiketianqi.com/api?version=v61&appid=76918367&appsecret=I2wk7vzV&city
      url: 'https://v0.yiketianqi.com/api?version=v61',
      data: {
        "appid": "76918367",
        "appsecret": "I2wk7vzV",
        "city": city
      },
      method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
      // header: {}, // 设置请求的 header
      success: function (res) {
        // success
        // console.log(res.data)
        that.setData({
          fy_TianQi: {
            wendu: res.data.tem + "℃",//温度
            Qing: res.data.wea //晴朗
          }
        })
      },
      fail: function () {
        wx.showModal({
          title: '提示',
          content: "天气信息获取失败，重新获取？",
          success: function (res) {
            if (res.confirm) {
              // console.log('用户点击确定')
              that.reverseGeocoder()
            }
          }
        })
      }
    })
  },

  //获取地区疫情情况
  getYiQing (c) {
    let that = this;
    wx.request({
      url: 'https://view.inews.qq.com/g2/getOnsInfo',
      data: {
        "name": "disease_h5",
        "callback": "jQuery3510005159808073531336_1633096619508",
        "_": "1633096619509"
      },
      method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
      // header: {}, // 设置请求的 header
      success: function (res) {
        // success
        var yqdata = res.data.match(/\((.+)\)/g);//正则表达式（提取括号中的字符串）
        var jsondata = yqdata[0].replace('(', '')
        var _data = jsondata.replace(')', '')
        var data = JSON.parse(_data).data
        var obj_data = JSON.parse(data);
        // console.log(obj_data.areaTree[0].children)
        that.setData({
          city_YQ: {
            lastUpdateTime: obj_data.lastUpdateTime,
            chinaTotal: {
              children: [obj_data.areaTree[0].children]
            }
          }
        })
        // console.log(that.data.city_YQ.chinaTotal.children)
        //调用方法（遍历省份数据提取当前地区的疫情情况）
        let CityYiQinig = that.data.city_YQ.chinaTotal.children
        that.getCityYiQing(c, CityYiQinig);

      },
      fail: function () {
        // fail
        wx.showModal({
          title: '提示',
          content: "疫情数据获取失败？",
          success: function (res) {
            if (res.confirm) {
              console.log(res.confirm, '用户点击确定')
              //getYiQing(c);//重新调用获取疫情数据方法
            }
          }
        })
      },
      complete: function () {
        // complete
      }
    })
  },


  //遍历省份数据提取当前地区的疫情情况
  getCityYiQing (c, e) {
    let that = this;
    let cityyq = c
    // console.log(cityyq)
    for (let i = 0; i < e[0].length; i++) {
      if (cityyq == e[0][i].name) {
        console.log(e[0][i], "省")
        that.setData({
          city_YQ1: e[0][i]
        })
        // console.log(that.data.city_YQ1)
      }
    }
  },

  getYiQing_Q (e) {
    console.log(e.currentTarget.dataset)
    let that = this;
    let name = e.currentTarget.dataset.name
    wx.navigateTo({
      url: '/pages/index3/index3?&name=' + name,
      success: function (res) {
        // success
      },
      fail: function () {
        // fail
        wx.showModal({
          title: '提示',
          content: `${{ name }}市的疫情数据请求失败！`,
          success: (res) => {
            if (res.confirm) {
              console.log(res.confirm, '用户点击确定')
            }
          }
        })
      },
      complete: function () {
        // complete
      }
    })
  }
})